

**** Fiscal Patriotism: APPENDIX Tables & Figures *****




*** Table A1: List of war taxes, chronological
use "War Tax Dataset 1.0.dta", clear
keep taxid country_name name_eng year_intro year_last_known

sort year_intro country_name year_last_known

gen n = _n
gen bl = "–"
 
order n taxid country_name name_eng year_intro bl year_last_known

* Data copied to Word and edited *




*** Table A2: Observable implications
	* Produced in Word *


*** Table A3: Summary statistics (panel data)
use "fiscal_patriotism", clear

/* Utilise user-written command asdoc:
ssc install asdoc
*/

* Keep only relevant sample:
drop if atrisk==0 | csample==0

asdoc sum wt_dum conf_dum5 major_dum5 maj_int5 maj_civ5 govsup5 opsup5 ///
 interv5 SCNATO i.incclass i.statecap_qrt OILprc5 privdef nat_ideology ///
 protindex univ_suf rel_nr pwr_wealth wt_durlog, label save(summary_stats.doc) replace
*Output layout edited in Word

 
 
 
*** Table 4: Logit regressions with different "at risk" definitions

use "fiscal_patriotism", clear

xtset ccode year
drop if csample!=1

*new at-risk variable, excluding interventions
gen atrisk2=1 if conf_dum==1 | f.conf_dum==1 | f2.conf_dum==1 | ///
 f3.conf_dum==1 | f4.conf_dum==1 | f5.conf_dum==1 
replace atrisk2=1 if l.conf_dum==1 | l2.conf_dum==1 | l3.conf_dum==1 ///
 | l4.conf_dum==1 | l5.conf_dum==1 | l6.conf_dum==1 | l7.conf_dum==1 ///
 | l8.conf_dum==1 | l9.conf_dum==1 | l10.conf_dum==1 

*New at-risk variable, excluding pre-conflict periods
gen atrisk3=1 if conf_dum==1 | l.conf_dum==1 | l2.conf_dum==1 | l3.conf_dum==1 ///
 | l4.conf_dum==1 | l5.conf_dum==1 | l6.conf_dum==1 | l7.conf_dum==1 ///
 | l8.conf_dum==1 | l9.conf_dum==1 | l10.conf_dum==1 
 
 
 tab atrisk
 tab atrisk2
 tab atrisk3
 
 


*Baseline (1)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec if atrisk==1, or vce(r)

*Excluding intervention (2)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec if atrisk2==1, or vce(r)

*Excluding 5-year pre-war period (3)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec if atrisk3==1, or vce(r)

*Only conflict periods [conflict-variable dropped] (4)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec if conf_dum==1, or vce(r)

*Extensive (full sample) (5)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec, or vce(r)


  
esttab using "Appendix table 4.rtf", se pr2 b(3) label eform nogaps nobase compress drop(*decade) ///
 title("Table A4: Logit regressions - different at risk definitions") ///
 order(conf_dum5 major_dum5 ///
 SCNATO *incclass *statecap_qrt OILprc5 privdef nat_ideology protindex ///
 univ_suf rel_nr pwr_wealth wt_durlog) ///
 addnote("In the baseline model (1), equivalent to model 5 in table 1, the sample consists of all years in which the government was either a primary or a secondary party to a conflict, plus 5 years before and 10 years after involvement. Model 2 uses the same definition but considers only when governments are primary parties to a conflict. Model 3 further excludes pre-conflict periods from the definition. Model 4 only includes conflict-periods (primary party). Finally, model 5 includes all observations in the sample. All models include decade-fixed effects. Coefficients expressed as odds ratios. Robust standard errors in parenthesis.") replace
 

 
 
 
 eststo clear
 
 
 
 
 *** Table A5: Logit regression with alternative variables
use "fiscal_patriotism", clear
 drop if csample!=1 | atrisk!=1
 
 xtset ccode year

* (1) Conflict-disaggregation (lagged simple dummies)
eststo: logit wt_dum l.conf_dum l.maj_int l.maj_civ l.govsup l.opsup5 l.interv SCNATO wt_durlog i.dec, or vce(r)


* (2) Structural conditions ( lnGDP + comprehensive state capacity variable)
		*Generating logged GDP/cap variable
		gen lngdppc=ln(gdppc)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO c.lngdppc##c.lngdppc i.statecap_qrt_comp wt_durlog i.dec, or vce(r)


* (3) Political and economic characteristics
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO c.lngdppc##c.lngdppc ///
 i.statecap_qrt_comp lnOIL_share privdef nat_ideology protindex wt_durlog i.dec, or vce(r)

* (4) Extensive
	*generating logged ethnic groups variable
	gen rel_nrlog = ln(rel_nr+1)
eststo: logit wt_dum conf_dum5 major_dum5 SCNATO c.lngdppc##c.lngdppc ///
 i.statecap_qrt_comp lnOIL_share privdef nat_ideology protindex elect_democr rel_nrlog pwr_wealth  wt_durlog i.dec, or vce(r)

 
 
 esttab using "Appendix table 5.rtf", se pr2 b(3) label eform nogaps nobase compress ///
drop(*decade) ///
 title("Table 5: Logit regressions - alternative variable operationalizations") ///
 order(conf_dum5 major_dum5 L.conf_dum L.maj_int L.maj_civ L.govsup ///
 L.opsup5 L.interv  SCNATO lngdppc c.lngdppc#c.lngdppc *statecap_qrt_comp /// 
   lnOIL_share privdef nat_ideology protindex elect_democr ///
  rel_nrlog pwr_wealth) ///
 addnote("Variables in bold differ from the baseline specification (table 1, main text). Model 1 substitutes the original rolling 5-year average conflict variables with simple dummies lagged 1 year. Model 2 includes the natural log of GDP/capita and its quadratic form to account for an inverted U-shaped relationship; Oil production is a continuous variable measuring the logged ratio of oil-production value to GDP. Model 3 introduces a more comprehensive index of State capacity (incl. education and fiscal variables); a comprehensive Electoral democracy index from V-Dem (v.12), instead of the original suffrage dummy; and substitutes the original linear count-variable of relevant ethnic groups with its natural log. Coefficients expressed as odds ratios; robust standard errors in parenthesis.") replace
 


 
 eststo clear


 

 
 *** Table A6: Logit regressions: Model variations
  use "fiscal_patriotism.dta", clear
 drop if csample!=1 | atrisk!=1
 
 xtset ccode year
 
 * (1) Baseline
  eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec, or vce(r)
 
* (2) Ordered logit
 eststo: ologit wtN conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog i.dec, or vce(r)
 
 * (3) Basic + postindependence
 eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 pwr_wealth rel_nr wt_durlog postind5 i.dec, or vce(r)
 

 
 

		*** Create splines

		*** Identifying spells ***
		*First, dropping non-at risk obs
		drop if atrisk==0 | csample==0
		*Then, gen begining of spell-dummy
		by ccode: gen begin=1 if year[_n-1]!=year-1 
		order ccode year country wtintro_dum wt_dum atrisk begin
		*Then, counting the number of spells per country
		by ccode: generate spellid = sum(begin)
		order ccode year country wtintro_dum wt_dum atrisk begin spellid
		*Finally, creating group-variable, identifying unique country-spells
		egen cspell = group(ccode spell)
		order ccode year country wtintro_dum wt_dum atrisk begin spellid cspell

		drop begin spellid


		*Xtset to new panel structure
		xtset cspell year

		*Splines for no-War tax intro spell, using mkduration
		/* Installing mkduration
		capture ado uninstall mkduration
		net install mkduration, from(https://github.com/andyphilips/mkduration/raw/master/src/)
		*/
		mkduration wtintro_dum, dname(nointro) spline(cubic)
		order ccode year country wtintro_dum wt_dum atrisk cspell nointro


		*Splines for no-War tax in effect
		mkduration wt_dum, dname(nointro2) spline(cubic)

 
 
  * (4) 'No war tax in effect' splines
 eststo: logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 rel_nr pwr_wealth wt_durlog i.dec nointro2_*, or vce(r)
 
 
 
 * (5) Country Fixed effects
eststo: xtlogit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 rel_nr pwr_wealth wt_durlog, fe or


 
 
* (6) Random effects
 eststo:  xtlogit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef nat_ideology protindex univ_suf ///
 rel_nr pwr_wealth wt_durlog, re or vce(r) 

  
  
  
  
  
  
 esttab using "Appendix table 6.rtf", se pr2 b(3) label eform nogaps nobase compress drop(*decade) ///
 title("Table 6: Logit regressions - model variations") ///
 order(conf_dum5 major_dum5 ///
 SCNATO *incclass *statecap_qrt OILprc5 privdef nat_ideology protindex ///
 univ_suf rel_nr pwr_wealth wt_durlog nointro2*) ///
 addnote("Model 1 is baseline logit model, equal to model 5 in table 1. Model 2 adds a control for the 5 years following independence. Model 3 includes splines accounting for time elapsed without war tax in effect. Model 4 introduces intercepts specific for each country-episode. Model 5 uses random effects. Coefficients expressed as odds ratios; standard errors in parenthesis: robust for all but model 4.") replace
 
 eststo clear
  

  
  
  
  
*** Table A7: War tax introductions (with splines)
  

 
* (1) Basic
eststo: logit wtintro_dum conf_dum major_dum l.wt_dum nointro_spl* i.dec, or vce(r)

* (2) Conflict-disaggregation
eststo: logit wtintro_dum conf_dum maj_int maj_civ govsup opsup interv SCNATO l.wt_dum nointro_spl* i.dec, or vce(r)


* (3) Structural conditions
eststo: logit wtintro_dum conf_dum major_dum SCNATO i.incclass /// 
i.statecap_qrt l.wt_dum nointro_spl* i.dec, or vce(r)

* (4) Political and economic carachteristics
eststo: logit wtintro_dum conf_dum major_dum SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef  ///
 nat_ideology protindex l.wt_dum nointro_spl* i.dec, or vce(r)

* (5) Extensive
eststo: logit wtintro_dum conf_dum major_dum SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef ///
  nat_ideology protindex univ_suf pwr_wealth rel_nr l.wt_dum nointro_spl* i.dec, or vce(r)
  
  
  

  

  
  
  
  esttab using "Appendix table 7.rtf", se pr2 b(3) label eform nogaps ///
  nobase compress drop(*decade) ///
 title("Table 7: Logit regressions - war tax introduction") ///
 order(conf_dum major_dum maj_int maj_civ govsup opsup interv ///
 SCNATO *incclass *statecap_qrt OILprc5 privdef nat_ideology /// 
 protindex univ_suf rel_nr pwr_wealth  ///
   nointro_spl*) ///
 addnote("Dependent variable is dummy coded as 1 for years in which a war tax is introduced. All models include cubic splines accounting for time at risk since last introduction. `At-risk' definition is the same as in baseline model: engagement as primary or secondary actor in armed conflict, plus 5 years before and 10 years following engagement. Dummies accounting for decade-fixed effects included in all models (not reported). Roubust standard errors in parenthesis Coefficients expressed as odds ratios; robust standard errors in parenthesis.") replace

 eststo clear

  

  
 
 
 **** Figure A1: Predicted probabilities of war duration 
   use "fiscal_patriotism.dta", clear
 drop if csample!=1 | atrisk!=1
 
 
 *Using extensive model (5)
  logit wt_dum conf_dum5 major_dum5 SCNATO i.incclass ///
 i.statecap_qrt OILprc5 privdef ///
  nat_ideology protindex univ_suf pwr_wealth rel_nr wt_durlog i.dec, or vce(r)
 margins, at(wt_durlog=(0(0.2)4))
  marginsplot
  *Adding x-markers (the antilog is calculated through excel (=EXP(logvalue)))
  marginsplot, xlab(0 "0" 0.5 `" "0.5" "(1.6)" "' 1 `" "1" "(2.7)" "' ///
  1.5 `" "1.5" "(4.5)" "' 2 `" "2" "(7.9)" "' 2.5 `" "2.5" "(12.2)" "' ///
  3 `" "3" "(20.1)" "' 3.5 `" "3.5" "(33.1)" "' 4 `" "4" "(54.6)"' ) scheme(s1mono) ylab(,grid) xtitle("Log of war tax duration", margin(medium)) ///
  ytitle("Probability of war tax in effect") note("Note: Based on model 5, Table 1 in main text. Original duration in years in parenthesis", size(vsmall))
  

  
  graph export "Figure A1_Predicted probabilities of duration.png", width(5000) replace
  
  

  
  
  
  
**** Figure A2: Marginsplot for GDP


gen lngdppc=ln(gdppc)
logit wt_dum conf_dum5 major_dum5 SCNATO c.lngdppc##c.lngdppc ///
 i.statecap_qrt_comp lnOIL_share privdef nat_ideology protindex wt_durlog i.dec, or vce(r)
margins, at(lngdppc=(6(0.2)11))
marginsplot, xlab(6 `" "6" "(403)" "' 7 `" "7" "(1,097)" "' 8 `" "8" "(2,981)" "' ///
  9 `" "9" "(8,105)" "' 10 `" "10" "(22,026)" "' 11 `" "11" "(59,874)" "', labsize(small)) ///
  scheme(s1mono) ylab(,grid) xtitle("Log of GDP/capita", margin(medium)) ytitle("Probability of war tax in effect") note("Note: Based on model 3, table A5. Original GDP/capita values (constant 2011 USD) in parenthesis", size(vsmall))

  
  graph export "Figure A2_Predicted probabilities by GDPcap.png", width(5000) replace
  
  
  
